Sale with polling
- Send
/salewith uniquepay_id. - Receive initial response (often
status: "success"without transaction payload). - Poll
/checkusing samepay_id. - Stop polling only when
/checkreturns a final transaction result in data:status: "success"withdata.status = "APPROVED", orstatus: "error"with data.status = "ERROR"or"REVERSED".
Recommended polling interval: 1000-2000 ms.
The same polling rule applies to /preauth, /confirm, /cancel, /refund, /xreport, and /close-shift.